import { Rule } from "./types";

export const RuffSpecificRuleList: Rule[] = [
    {
        code: "RUF001",
        name: "ambiguous-unicode-character-string",
        descEn: "String contains ambiguous unicode character {confusable} (did you mean {representant}?)",
        descCn: "",
        autoFix: true,
    },
    {
        code: "RUF002",
        name: "ambiguous-unicode-character-docstring",
        descEn: "Docstring contains ambiguous unicode character {confusable} (did you mean {representant}?)",
        descCn: "",
        autoFix: true,
    },
    {
        code: "RUF003",
        name: "ambiguous-unicode-character-comment",
        descEn: "Comment contains ambiguous unicode character {confusable} (did you mean {representant}?)",
        descCn: "",
        autoFix: true,
    },
    {
        code: "RUF005",
        name: "collection-literal-concatenation",
        descEn: "Consider {expr} instead of concatenation",
        descCn: "",
        autoFix: true,
    },
    {
        code: "RUF006",
        name: "asyncio-dangling-task",
        descEn: "Store a reference to the return value of asyncio.{method}",
        descCn: "",
        autoFix: false,
    },
    {
        code: "RUF007",
        name: "pairwise-over-zipped",
        descEn: "Prefer itertools.pairwise() over zip() when iterating over successive pairs",
        descCn: "",
        autoFix: false,
    },
    {
        code: "RUF008",
        name: "mutable-dataclass-default",
        descEn: "Do not use mutable default values for dataclass attributes",
        descCn: "",
        autoFix: false,
    },
    {
        code: "RUF009",
        name: "function-call-in-dataclass-default-argument",
        descEn: "Do not perform function call {name} in dataclass defaults",
        descCn: "",
        autoFix: false,
    },
    {
        code: "RUF100",
        name: "unused-noqa",
        descEn: "Unused noqa directive",
        descCn: "",
        autoFix: true,
    },

];